package com.grace.common;

import lombok.Data;

import java.util.HashMap;
import java.util.Map;

@Data
public class JsonData {

    //返回结果
    private boolean result; //true表示请求正常处理过，false表示处理发生异常
    //返回信息
    private String msg;
    //返回数据
    private Object data;

    //初始化构造函数(只传入一个结果的时候)
    public JsonData(boolean result) {
        this.result = result;
    }

    //返回成功信息+返回数据
    public static JsonData success(String msg, Object data) {
        JsonData jsonData = new JsonData(true);
        jsonData.setMsg(msg);  //设置信息
        jsonData.setData(data);    //设置数据
        return jsonData;
    }

    //返回成功数据
    public static JsonData success(Object data) {
        JsonData jsonData = new JsonData(true);
        jsonData.setData(data);//设置数据
        return jsonData;
    }

    //返回成功jsonData, 不接受任何数据
    public static JsonData success() {
        JsonData jsonData = new JsonData(true);
        return jsonData;
    }


    //返回失败信息
    public static JsonData fail(String msg) {
        JsonData jsonData = new JsonData(false);
        jsonData.setMsg(msg);//设置信息
        return jsonData;
    }

    //转换为map类型
    public Map<String, Object> toMap() {
        Map<String, Object> map = new HashMap<>();
        map.put("result", result);
        map.put("msg", msg);
        map.put("data", data);
        return map;
    }

}
